﻿using ProjectManageSystemApi.DbEntity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace ProjectManageSystemApi.Models
{
    public class SystemMenuDto
    {
        /// <summary>
        /// 主键
        /// </summary>
        public long Id { get; set; }

        /// <summary>
        /// 编码
        /// </summary>
        public string Code { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? CreateAt { get; set; }

        /// <summary>
        /// 创建人员
        /// </summary>
        public long? CreateBy { get; set; }

        /// <summary>
        /// 描述
        /// </summary>
        public string Description { get; set; }

        /// <summary>
        /// 链接
        /// </summary>
        public string Href { get; set; }

        /// <summary>
        /// 跳转链接
        /// </summary>
        public string Redirect { get; set; }

        /// <summary>
        /// 图标
        /// </summary>
        public string Icon { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        public int Order { get; set; } = 0;

        /// <summary>
        /// 父级主键（顶级为0）
        /// </summary>
        public long? ParentId { get; set; } = 0;

        /// <summary>
        /// 菜单上下级关系路径
        /// </summary>
        public string Path { get; set; }

        /// <summary>
        /// 状态(0:无效,1:有效)
        /// </summary>
        public int? Status { get; set; } = 1;

        /// <summary>
        /// 类型(0:其他、10:系统、20:客户、30:应用)
        /// </summary>
        public string Type { get; set; } = "0";

        /// <summary>
        /// 更新时间
        /// </summary>
        public DateTime? UpdateAt { get; set; }

        /// <summary>
        /// 更新人员
        /// </summary>
        public long? UpdateBy { get; set; }
    }

    public class SystemMenuDto2 
    {
        public string Icon { get; set; }
        public string Url { get; set; }
        public string Meta { get; set; }
        /*
{
    path: '/icon',
    component: Layout,
    children: [
      {
        path: 'index',
        component: () => import('@/views/icons/index'),
        name: 'Icons',
        meta: { title: 'Icons', icon: 'icon', noCache: true }
      }
    ]
  }
         */
    }
}
